﻿using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using DataSystem;
using TerrainSystem;
using Utility.DataStructure;
using Utility.FSM;
using Utility.PoolSystem;
using Utility.Random;
using Utility;
using System.Linq;
using System.Text;
using Utility.DataSystem;
using System;
using Utility.Math;

public class Main : SingletonBehaviour<Main>
{
	[SerializeField] GameCamera _gameCamera;
	public static GameCamera GameCamera => Inst._gameCamera;
	
	[SerializeField] GameSettingObject _gameSettingObject;
	public static GameSetting GameSetting => Inst?._gameSettingObject?.GetSetting ();
	
	public static Game Game { get; set; } = new Game ();

	static TerrainObject _terrainObject;

	public static TerrainObject Terrain => _terrainObject ?? (_terrainObject = new GameObject ("Terrain").AddComponent<TerrainObject> ());

	private void Update ()
	{
		Game.Update_Captured ();
	}
}
